package com.xinghai.system.util;


import org.dozer.DozerBeanMapper;

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;


/**
 * 工具类
 * @author smy
 */
public class XHUtils {
    /**
     * 持有Dozer单例, 避免重复创建DozerMapper消耗资源.
     */
    private static DozerBeanMapper dozer = new DozerBeanMapper();


    private XHUtils() {
    }

    /**
     * 时间戳转成 LocalDateTime
     * @param timestamp 时间戳
     */
    public static LocalDateTime timestampToLocalDateTime(long timestamp) {
        // 使用系统默认时区将时间戳转换为Instant
        Instant instant = Instant.ofEpochMilli(timestamp);

        // 假设我们想要使用系统默认时区，但你也可以指定其他时区，比如ZoneId.of("UTC")
        ZoneId zoneId = ZoneId.systemDefault();

        // 将Instant转换为LocalDateTime
        LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zoneId);

        return localDateTime;
    }

    /**
     * 解析用车申请 始发地
     * @return
     */
    public static String parseBeginAddr(String data) {
        // 检查字符串是否以'['开始并且以']'结束
        if (data.startsWith("[") && data.endsWith("]")) {
            // 移除字符串开头的 '[' 和结尾的 ']'
            return data.substring(1, data.length() - 1);
        }
        // 如果字符串不满足条件，直接返回原字符串
        return data;
    }
}
